// pages/employeeDetail/employeeDetail.js
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    /*  */
    userInfo_share:{},
    /*  */
    employeeInfo:{},
    /* tabContent数据 */
    contentIndex:'0',  //内容标记
    tabContentData:[
      {
        name:'关联客户',
        id:'0',
        emptyWord:'暂无关联的客户数据！',
        showListEmpty:false,
        data:[],   //列表数据
        reqFnName:'getClients',  //获取列表数据方法名
        page:1,  //页码
        pageSize:10, //每页条数
      }
    ],
    /*  */
    clientArgs:{
      corp_userid:"",
      page:1,  //页码
      pageSize:10, //每页条数
      type:""  //1、今天，2、昨天，3、本周，4、本月，5、更多
    },
  },
  /* 跳转至客户详情 */
  goToVisitDetail:function(e){
    let { info } = e.currentTarget.dataset;
    //
    console.log(info);
    app.globalData.fromEmployeeDetailToVisitDetail = true;
    wx.navigateTo({
      url: '/pages/customerDetail/customerDetail',
      success:res=>{
        res.eventChannel.emit('fromEmployeeDetailToVisitDetail',{
          info:info
        });
      }
    })
  },
  /*  */
  backToEmployeeManage(){
    wx.navigateBack({
      complete: (res) => {}
    })
  },
  /* 拨打员工电话 */
  makePhoneCall(){
    wx.makePhoneCall({
      phoneNumber: `${this.data.employeeInfo.mobile}`,
    })
  },
  /* 获取员工个人信息（企业微信） */
  getCorpUserForCorpWx(userid){
    return app.globalData.$http.call(this,{
      api:"/getCorpUserForCorpWx",
      data:{
        userid:userid
      }
    }).then(res=>{
      console.log(res)
      if(res.data.code=="1"){
        this.setData({
          employeeInfo:res.data.body
        })
        return Promise.resolve()
      }else{
        return Promise.reject("获取员工个人信息（企业微信）失败")
      }
    }).catch(err=>{
      return Promise.reject("获取员工个人信息（企业微信）失败")
    })
  },
  /* 获取客户数据 */
  getClients(){
    //
    wx.showLoading({
      title:'获取客户数据',
      mask:true
    });
    //
    this.setData({
      'clientArgs.page':this.data.tabContentData[this.data.contentIndex*1].page,
      'clientArgs.corp_userid':this.data.employeeInfo.userid
    });
    //
    return app.globalData.$http.call(this,{
      api:"/getClients",
      data:this.data.clientArgs
    }).then(res=>{
      console.log(res)
      wx.hideLoading();
      if(res.data.code=='1'){
        if(res.data.body.data.length){
          let tmpData = this.data.tabContentData[this.data.contentIndex*1].data;
          let page = this.data.tabContentData[this.data.contentIndex*1].page;
          res.data.body.data.forEach(item=>{
            tmpData.push(item);
          });
          page++;
          //
          this.setData({
            [`tabContentData[${this.data.contentIndex*1}].page`]:page,
            [`tabContentData[${this.data.contentIndex*1}].data`]:tmpData,
            [`tabContentData[${this.data.contentIndex*1}].showListEmpty`]:false
          });
        }
        //列表为空
        if(!res.data.body.data.length&&!this.data.tabContentData[this.data.contentIndex*1].data.length){
          //
          this.setData({
            [`tabContentData[${this.data.contentIndex*1}].showListEmpty`]:true
          });
        }
        return Promise.resolve()
      }else{
        wx.showToast({
          icon:'none',
          title:'获取客户列表数据失败'
        });
      }
    }).catch(err=>{
      wx.hideLoading();
      wx.showToast({
        icon:'none',
        title:'获取客户列表数据失败'
      });
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    //获取用户信息
    this.setData({
      userInfo_share:app.globalData.get_userInfo()
    });
    if(app.globalData.fromEmployeeToEmployeeDetail){
      app.globalData.fromEmployeeToEmployeeDetail = false;
      let eventChannel = this.getOpenerEventChannel();
      eventChannel.on("fromEmployeeToEmployeeDetail",data=>{
        //
        // this.setData({
        //   employeeInfo:data.info
        // })
        //
        this.getCorpUserForCorpWx(data.info.userid).then(()=>{
          this.getClients()
        })
      });
    }
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },
  /* 下拉刷新 */
  pageContentRefresh:function(){
    //
    this.setData({
      [`tabContentData[${this.data.contentIndex*1}].page`]:1,
      [`tabContentData[${this.data.contentIndex*1}].data`]:[],
    });
    //
    this[this.data.tabContentData[this.data.contentIndex*1].reqFnName]().then(()=>{
      wx.stopPullDownRefresh({
        complete: (res) => {},
      });
    }).catch(()=>{
      wx.stopPullDownRefresh({
        complete: (res) => {},
      });
    });
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    this.pageContentRefresh();
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    this[this.data.tabContentData[this.data.contentIndex*1].reqFnName]();
  }
})